
import type { UserData } from '@/types/user'
import { request } from '@/utils/request'
//login登录register注册changeMobile更换手机号forgetPassword找回密码,bindMobile绑定三方登录，区分验证码
export type CodeType = 'login' | 'register' | 'changeMobile' | 'forgetPassword' | 'bindMobile'

export interface GetCodeParams {
  mobile: string
  type: CodeType
}
export type GetCodeData = {
  code: string
}
/**
 * 发送验证码
 */
export const getCodeApi = (params: GetCodeParams) => {
  // get 方法的参数需要通过 params 来传递
  return request.get<null, GetCodeData>('/code', { params })

}
/** 参数类型定义 */
interface LoginCodeParams {
  /** 手机号 */
  mobile: string
  /** 验证码 */
  code: string
}
/** 登录--手机验证码登录 */
export const loginByMobileApi = (data: LoginCodeParams) => {
  return request.post<null,loginCodeData>('/login', data)
}


export interface loginCodeData {
  /**
   * 用户名
   */
  account?: string;
  /**
   * 头像
   */
  avatar?: string;
  /**
   * 用户id
   */
  id: string;
  /**
   * 脱敏手机号，带星号的手机号
   */
  mobile?: string;
  /**
   * refreshToken
   */
  refreshToken: string;
  /**
   * token
   */
  token: string;
}
// 我的-获取个人用户信息
// GET
// /patient/myUser
// 用于我的页面显示用户信息
export const userInfoApi = () => {
  return request.get<null, UserData>('/patient/myUser')
}
interface LoginPasswordParams {
  /** 手机号 */
  mobile: string
  /** 验证码 */
  password:string
}
export const loginPasswordApi=(data:LoginPasswordParams)=>{
  return request.post<null,loginCodeData>('/login/password',data)
}


